home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- ''' Fixer for itertools.(imap|ifilter|izip) --> (map|filter|zip) and
- itertools.ifilterfalse --> itertools.filterfalse (bugs 2360-2363)
-
- imports from itertools are fixed in fix_itertools_import.py
-
- If itertools is imported as something else (ie: import itertools as it;
- it.izip(spam, eggs)) method calls will not get fixed.
- '''
- from import fixer_base
- from fixer_util import Name
-
- class FixItertools(fixer_base.BaseFix):
- it_funcs = "('imap'|'ifilter'|'izip'|'ifilterfalse')"
- PATTERN = "\n power< it='itertools'\n trailer<\n dot='.' func=%(it_funcs)s > trailer< '(' [any] ')' > >\n |\n power< func=%(it_funcs)s trailer< '(' [any] ')' > >\n " % locals()
- run_order = 6
-
- def transform(self, node, results):
- prefix = None
- func = results['func'][0]
- if 'it' in results and func.value != 'ifilterfalse':
- dot = results['dot']
- it = results['it']
- prefix = it.get_prefix()
- it.remove()
- dot.remove()
- func.parent.replace(func)
-
- if not prefix:
- pass
- prefix = func.get_prefix()
- func.replace(Name(func.value[1:], prefix = prefix))
-
-
-